// 装饰者  接收函数 >>> 返回一个能记住上一次结果的函数
export function memoize (fn) {
    let lastArgs = [];
    let lastResult = null;
    return function (...args) {
        if (JSON.stringify(lastArgs) === JSON.stringify(args)) {
            return lastResult;
        }
        lastArgs = args;
        lastResult = fn.call(this, ...args);
        return lastResult;
    };
}
 